Wireless device and wireless communication method

ABSTRACT

A wireless device, including: an antenna configured to receive a reception signal, a processor configured to convert the reception signal into a first signal that includes a product of an upper triangular matrix and a transmission signal, to detect a first region, to which the first signal belongs, on an IQ plane, a memory configured to store a symbol ranking table that stores symbol candidates in an order of shorter distance from a region center, up to an order that is equal to a rank upper limit value that is set to be lower than a modulation multi-level number of the transmission signal, wherein the processor is further configured to select a first symbol candidate based on the first region and the symbol ranking table.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority of theprior Japanese Patent Application No. 2012-061205, filed on Mar. 16,2012, the entire contents of which are incorporated herein by reference.

FIELD

The embodiments discussed herein are related to a wireless device and awireless communication method.

BACKGROUND

In recent years, multiple input multiple output (MIMO) technique hasbeen studied as a next-generation communication technique. In the MIMOsystem, a transmitter which is provided with a plurality of transmissionantennas (for example, M antennas) transmits a plurality of data streamsand a receiver which is provided with a plurality of reception antennas(for example, N antennas) receives the plurality of data streams in aseparate manner. Here, M≦N holds.

For the sake of expediency in description, a case where a transmittertransmits M data streams which are equal to the number of transmissionantennas is described as an example, here. A receiver receives Nreception signals. Here, when a data stream is denoted as a vector x inthe M-th row and the first column, a channel matrix in the N-th row andM-th column which has a propagation path gain hij between the j-thtransmission antenna and the i-th reception antenna as an element isdenoted as H, a reception signal is denoted as a vector y in the N-throw and first column, and a noise is denoted as a vector n in the N-throw and first column, expression (1) is obtained.

$\begin{matrix}{y = {{{Hx} + {n\begin{pmatrix}y_{1} \\y_{2} \\\vdots \\y_{N}\end{pmatrix}}} = {{\begin{pmatrix}h_{11} & h_{12} & \cdots & h_{1,M} \\h_{21} & h_{22} & \cdots & h_{2,M} \\\vdots & \vdots & \ddots & \vdots \\h_{N,1} & h_{N,2} & \cdots & h_{N,M}\end{pmatrix}\begin{pmatrix}x_{1} \\x_{2} \\\vdots \\x_{M}\end{pmatrix}} + \begin{pmatrix}n_{1} \\n_{2} \\\vdots \\n_{N}\end{pmatrix}}}} & (1)\end{matrix}$

Examples of a stream separation method on the reception side includeminimum mean square error (MMSE) and maximum likelihood detection (MLD).In MLD, metrics such as a squared Euclidean distance are calculated withrespect to all symbol replica candidate combinations of a plurality ofstream signals so as to set a combination, which has the minimum summetric, as a signal after stream separation. In MLD, a superiorreception performance is obtained compared to a linear separation methodsuch as MMSE. However, when a modulation multi-level number of the l-thtransmission signal is denoted as m_(l) (for example, m=4 in a case ofQPSK, m=16 in a case of 16QAM, and m=64 in a case of 64QAM), acombination number is expressed as expression (2).

$\begin{matrix}{\prod\limits_{k = 1}^{M}m_{k}} & (2)\end{matrix}$

As expressed in expression (2), as a modulation multi-level number andthe number of transmission streams are increased, the number of times ofmetric calculation is increased in an exponential fashion, causing anenormous amount of processing disadvantageously. Therefore, varioustypes of arithmetic amount reduction type MLD have been proposed.

In related art, QRM-MLD in which QR decomposition and M algorithm arecombined with each other has been proposed. In QRM-MLD, metrics such asa squared Euclidean distance from all symbol replica candidates arecalculated with respect to surviving symbol replica candidates on theprevious stage. When k=1, . . . , and the number of surviving candidateson the M-th stage is denoted as S_(k), the number of times of metriccalculation becomes as expression (3).

$\begin{matrix}{S_{1} + {\sum\limits_{k = 2}^{M}{m_{k}S_{k - 1}}}} & (3)\end{matrix}$

In related art, a method of adaptive selection of surviving symbolreplica candidates based on the maximum reliability (ASESS) in which amethod for reducing the number of times of metric calculation is furtherapplied to QRM-MLD has been proposed. Symbol replica candidates onrespective stages are ranked through region detection and metriccalculation is performed as many times as the number of surviving symbolreplica candidates, with respect to symbol replicas in an ascendingorder of cumulative values of metrics. When k=1, . . . , and the numberof surviving candidates on the M-th stage is denoted as S_(k), thenumber of times of metric calculation is expressed as expression (4).

$\begin{matrix}{\sum\limits_{k = 1}^{M}S_{k}} & (4)\end{matrix}$

In ASESS method, the number of times of metric calculation is linearlyincreased with respect to the number of transmission streams. Further,Japanese Laid-open Patent Publication No. 2006-270430 has disclosed amethod in which ranking of symbol candidates is applied to the listsphere decoding (LSD) method.

The ASESS method is described in detail. In order to simplify thedescription, a case of M=N is taken as an example. In the ASESS method,a channel matrix H is QR-decomposed into a unitary matrix Q and an uppertriangular matrix R as expression (5).

$\begin{matrix}{H = {{QR} = {\begin{pmatrix}q_{11} & q_{12} & \cdots & q_{1,N} \\q_{21} & q_{22} & \cdots & q_{2,N} \\\vdots & \vdots & \ddots & \vdots \\q_{N,1} & q_{N,2} & \cdots & q_{N,N}\end{pmatrix}\begin{pmatrix}r_{11} & r_{12} & \cdots & r_{1,N} \\\; & r_{22} & \cdots & r_{2,N} \\\; & \; & \ddots & \vdots \\\; & O & \; & r_{N,N}\end{pmatrix}}}} & (5)\end{matrix}$

O denotes a zero matrix. In the ASESS method, multiplication of areception signal y by Hermitian conjugates of the unitary matrix Q fromthe left enables orthogonalization as expression (6).

$\begin{matrix}\begin{matrix}{z = {Q^{H}y}} \\{= {{Q^{H}{QRx}} + {Q^{H}n}}} \\{= {{Rx} + {n^{\prime}\begin{pmatrix}z_{1} \\z_{2} \\\vdots \\z_{N}\end{pmatrix}}}} \\{= {{\begin{pmatrix}r_{11} & r_{12} & \cdots & r_{1,N} \\\; & r_{22} & \cdots & r_{2,N} \\\; & \; & \ddots & \vdots \\\; & O & \; & r_{N,N}\end{pmatrix}\begin{pmatrix}x_{1} \\x_{2} \\\vdots \\x_{N}\end{pmatrix}} + \begin{pmatrix}n_{1}^{\prime} \\n_{2}^{\prime} \\\vdots \\n_{N}^{\prime}\end{pmatrix}}}\end{matrix} & (6)\end{matrix}$

In the ASESS method, region detection on the lowest stage is performedby expression (7) so as to determine a region number ε⁽¹⁾ of a region towhich u_(N) belongs, on the first stage.

u _(N) =z _(N) /r _(N,N)  (7)

In the ASESS method, region detection includes the N_(div) times ofquadrant detection and the N_(div)−1 times of origin movement, and aregion to which u_(N) belongs among 2^(2Ndiv) regions is detected. Inthe ASESS method, a symbol ranking table Ω is referred to and as manycandidate replicas as S₁, the number of surviving candidates from thehigher ranking, are set as surviving paths of the first stage so as tocalculate a metric such as a squared Euclidean distance. When asurviving path is expressed as expression (8) and a metric is a squaredEuclidean distance, the metric is expressed as expression (9).

Π₁ ⁽¹⁾(i)=Ω^((m) ^(N) ⁾(ε,i)  (8)

d ₁(Π₁ ⁽¹⁾(i))=|z _(N) −r _(N,N) c _(N,Π) ₁ ₍₁₎ _((i))|² ,i=1,2, . . .,S ₁  (9)

Here, Ω⁽⁴⁾, Ω⁽¹⁶⁾, and Ω⁽⁶⁴⁾ respectively represent symbol rankingtables with respect to QPSK, 16QAM, and 64QAM. Expression (10) expressesthe symbol number of the i-th order in ranking with respect to a regionnumber ε⁽¹⁾ which is stored in the symbol ranking table.

Ω^((m) ^(N) ⁾(ε⁽¹⁾ ,i)  (10)

In the ASESS method, region detection by expression (11) in whichcandidate replicas of S₁ surviving paths, which are survived on thefirst stage, are respectively cancelled from a reception signal z_(N-1)which is the second lowest signal is performed so as to determine aregion number ε⁽¹⁾(i) of a region to which u expressed as expression(12) belongs, on the second stage.

u _(N-1)(Π₁ ⁽¹⁾(i))=(z _(N-1) −r _(N-1,N) c _(N,Π) ₁ ₍₁₎ _((i)))/r_(N-1,N-1) ,i=1,2, . . . ,S ₁  (11)

u _(N-1)(Π₁ ⁽¹⁾(i))  (12)

In the ASESS method, a surviving path on the second stage is adaptivelyselected as following. In the ASESS method, a representative cumulativemetric value E(i) and a current rank ρ(i) of each surviving path whichis survived on the first stage are first initialized so as to obtainexpression (13), expression (14), and expression (15).

E(i):=d ₁(Π₁ ⁽¹⁾(i))  (13)

ρ(i):=1  (14)

q:=1  (15)

In the ASESS method, a candidate replica on the ρ(i_(min))-th order inthe ranking of i_(min) at which ρ(i)≦m_(N) is satisfied and E(i) has theminimum value is selected from the symbol ranking table and the q-thsurviving path on the second stage is expressed as expression (16) andexpression (17).

$\begin{matrix}{{{\prod_{1}^{(2)}(q)} = {\prod_{1}^{(1)}\left( i_{m\; i\; n} \right)}}{{\prod_{2}^{(2)}(q)} = {\Omega^{(m_{N - 1})}\left( {{ɛ^{(2)}\left( i_{m\; i\; n} \right)},{\rho \left( i_{m\; i\; n} \right)}} \right)}}} & (16) \\{i_{m\; i\; n} = {\arg\limits_{{\rho {(i)}} \leq m_{N - 1}}\left( {\min \left\lbrack {e(i)} \right\rbrack} \right)}} & (17)\end{matrix}$

A cumulative metric is calculated as expression (18).

d ₂(Π⁽²⁾(q))=d ₁(Π₁ ⁽¹⁾(i _(min)))+|z _(N-1) −r _(N-1,N) c _(N,Π) ₁ ₍₁₎_((i) _(min) ₎ −r _(N-1,N-1) c _(N-1),Π ₂ ₍₂₎ _((q))|²  (18)

Then, in the ASESS method, the cumulative metric is updated asexpression (19), expression (20), and expression (21).

E(i _(min)):=d ₂(Π⁽²⁾(q))  (19)

ρ(i _(min)):=ρ(i _(min))+1  (20)

q:=q+1  (21)

In the ASESS method, the above-mentioned processing is performed until qreaches the number S₂ of surviving paths of the second stage. In theASESS method, region detection by expression (22) in which candidatereplicas of S_(k-1) surviving paths, which are survived on the k−1-thstage, are respectively cancelled from a reception signal z_(N-k+1)which is the k-th lowest signal is performed so as to determine a regionnumber ε^((k)) of a region to which u expressed as expression (23)belongs, on the following k-th stage.

$\begin{matrix}{{{u_{{N - k + 1},i}\left( {\Pi^{({k - 1})}(i)} \right)} = {\left( {z_{N - k + 1} - {\sum\limits_{p = 1}^{k - 1}{r_{{N - k + 1},{N - p + 1}}c_{{N - p + 1},{\Pi_{p}^{({k - 1})}{(i)}}}}}} \right)/r_{{N - k + 1},{N - k + 1}}}},\mspace{79mu} {i = 1},2,\ldots \mspace{14mu},S_{k - 1}} & (22) \\{\mspace{79mu} {u_{{N - k + 1},i}\left( {\Pi^{({k - 1})}(i)} \right)}} & (23)\end{matrix}$

In the ASESS method, a surviving path on the k-th stage is adaptivelyselected as following. In the ASESS method, a representative cumulativemetric value E(i) and a current rank ρ(i) of each surviving path whichis survived on the k−1-th stage are first initialized so as to obtainexpression (24), expression (25), and expression (26).

E(i):=d _(k-1)(Π^((k-1))(i))  (24)

ρ(i):=1  (25)

q:=1  (26)

In the ASESS method, a candidate replica on the ρ(i_(min))-th order inthe ranking of i_(min) at which ρ(i)≦m_(N-k+1) is satisfied and E(i) hasthe minimum value is selected from the symbol ranking table and the q-thsurviving path on the k-th stage is expressed as expression (27) andexpression (28).

$\begin{matrix}{{{\Pi_{{1\sim k} - 1}^{(k)}(q)} = {\Pi^{({k - 1})}\left( i_{m\; i\; n} \right)}}{{\Pi_{k}^{(k)}(q)} = {\Omega^{(m_{N - k + 1})}\left( {{ɛ^{(k)}\left( i_{m\; i\; n} \right)},{\rho \left( i_{m\; i\; n} \right)}} \right)}}} & (27) \\{i_{m\; i\; n} = {\arg\limits_{{\rho {(i)}} \leq m_{N - k + 1}}\left( {\min \left\lbrack {E(i)} \right\rbrack} \right)}} & (28)\end{matrix}$

A cumulative metric is calculated as expression (29).

$\begin{matrix}{{d_{k}\left( {\Pi^{(k)}(q)} \right)} = {{d_{k - 1}\left( {\Pi^{({k - 1})}\left( i_{m\; i\; n} \right)} \right)} + {{z_{N - k + 1} - {\sum\limits_{p = 1}^{k - 1}{r_{{N - k + 1},{N - p + 1}}c_{{N - p + 1},{\Pi_{p}^{(k)}{(q)}}}}} - {r_{{N - k + 1},{N - k + 1}}c_{{N - k + 1},{\Pi_{k}^{(k)}{(q)}}}}}}^{2}}} & (29)\end{matrix}$

Then, in the ASESS method, the cumulative metric is updated asexpression (30), expression (31), and expression (32), and theabove-mentioned processing is performed until q reaches the number S_(k)of surviving paths of the k-th stage.

E(i _(min)):=d _(k)(Π^((k))(q))  (30)

ρ(i _(min)):=ρ(i _(min))+1  (31)

q:=q+1  (32)

The followings are examples of related art.

K. J. Kim and J. Yue, “Joint channel estimation and data detectionalgorithms for MIMO-OFDM systems,” in Proc. Thirty-Sixth AsilomarConference on Signals, Systems and Computers, pp. 1857-1861, November2002

K. Higuchi, H. Kawai, N. Maeda and M. Sawahashi, “Adaptive Selection ofSurviving Symbol Replica Candidates Based on Maximum Reliability inQRM-MLD for OFCDM MIMO Multiplexing,” Proc. of IEEE Globecom 2004, pp.2480-2486, November 2004

K. Higuchi, H. Kawai, N. Maeda and M. Sawahashi, “Adaptive SelectionAlgorithm of Surviving Symbol Replica Candidates in QRM-MLD for MIMOMultiplexing Using OFCDM Wireless Access”, RCS2004-69, May 2004

SUMMARY

According to an aspect of the invention, a wireless device, including:an antenna configured to receive a reception signal, a processorconfigured to convert the reception signal into a first signal thatincludes a product of an upper triangular matrix and a transmissionsignal, to detect a first region, to which the first signal belongs, onan IQ plane, a memory configured to store a symbol ranking table thatstores symbol candidates in an order of shorter distance from a regioncenter, up to an order that is equal to a rank upper limit value that isset to be lower than a modulation multi-level number of the transmissionsignal, wherein the processor is further configured to select a firstsymbol candidate based on the first region and the symbol ranking table.

The object and advantages of the invention will be realized and attainedby means of the elements and combinations particularly pointed out inthe claims.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and arenot restrictive of the invention, as claimed.

BRIEF DESCRIPTION OF DRAWINGS

FIGS. 1A to 1C illustrate a CCDF of a current rank of each survivingpath in a stage end.

FIG. 2 illustrates the configuration of a MIMO system.

FIG. 3 illustrates a configuration example of a MIMO stream separationunit of Embodiment 1.

FIG. 4 is a flowchart of region detection.

FIG. 5 illustrates an example of region detection in QPSK (N_(div)=1).

FIG. 6 illustrates an example of a size reduction type symbol rankingtable in QPSK and N_(div)=1.

FIG. 7 illustrates an example of region detection in QPSK (N_(div)=2).

FIG. 8 illustrates an example of a size reduction type symbol rankingtable in QPSK and N_(div)=2.

FIG. 9 illustrates an example in 16QAM (N_(div)=2).

FIG. 10 illustrates an example of a size reduction type symbol rankingtable in 16QAM (N_(div)=2).

FIG. 11 illustrates an example in 16QAM (N_(div)=3).

FIG. 12 illustrates an example of a size reduction type symbol rankingtable in 16QAM (N_(div)=3).

FIG. 13 illustrates an example in 64QAM (N_(div)=3).

FIG. 14 illustrates an example of a size reduction type symbol rankingtable in 64QAM and N_(div)=3.

FIGS. 15A to 15C illustrate an example of region detection.

FIG. 16 is a flowchart of Embodiment 1.

FIG. 17 is a flowchart of first stage processing.

FIG. 18 is a flowchart of surviving symbol selection of the first stageprocessing.

FIG. 19 is a flowchart of k-th stage processing.

FIG. 20 is a flowchart of surviving symbol selection of the k-th stageprocessing.

FIG. 21 illustrates an outline of a second aspect.

FIG. 22 illustrates a configuration example of MIMO stream separationunit of Embodiment 2.

FIGS. 23A and 23B respectively illustrate examples of a symbol higherorder ranking table and a symbol lower order ranking table in QPSK andN_(div)=2.

FIGS. 24A and 24B respectively illustrate examples of a symbol higherorder ranking table and a symbol lower order ranking table in 16QAM andN_(div)=3.

FIG. 25 illustrates an example of a symbol higher order ranking table in64QAM and N_(div)=3.

FIG. 26 illustrates an example of a symbol lower order ranking table in64QAM and N_(div)=3.

FIG. 27 is a flowchart of surviving symbol selection of first stageprocessing of Embodiment 2.

FIG. 28 is a flowchart of k-th stage processing of Embodiment 2.

FIG. 29 is a flowchart of surviving symbol selection of the k-th stageprocessing of Embodiment 2.

FIG. 30 illustrates a configuration example of a MIMO stream separationunit of Embodiment 3.

FIGS. 31A to 31C respectively illustrate examples of a symbol higherorder ranking table, a symbol intermediate order ranking table, and asymbol lower order ranking table.

FIG. 32 is a flowchart of surviving symbol selection of first stageprocessing of Embodiment 3.

FIG. 33 is a flowchart of surviving symbol selection of k-th stageprocessing of Embodiment 3.

FIGS. 34A and 34B respectively illustrate examples of a symbol higherorder ranking table and a symbol lower order ranking table.

FIG. 35 is a flowchart of first stage processing of Embodiment 5.

FIGS. 36A and 36B respectively illustrate examples of a symbol higherorder ranking table and a symbol lower order ranking table for the firststage processing of Embodiment 5.

FIG. 37 illustrates the configuration of a MIMO stream separation unitof Embodiment 6.

FIG. 38 is a flowchart of Embodiment 6.

FIG. 39 illustrates the configuration of a MIMO stream separation unitof Embodiment 7.

FIG. 40 is a flowchart of Embodiment 7.

FIG. 41 illustrates an example of a symbol ranking table in QPSK andN_(div)=1.

FIG. 42 illustrates an example of a symbol ranking table in QPSK andN_(div)=2.

FIG. 43 illustrates an example of a symbol ranking table in 16QAM andN_(div)=2.

FIG. 44 illustrates an example of a symbol ranking table in 16QAM andN_(div)=3.

FIG. 45 illustrates an example of a symbol ranking table in 64QAM andN_(div)=3.

FIG. 46 illustrates sizes of symbol ranking tables.

DESCRIPTION OF EMBODIMENTS

As described above, in the ASESS method, region detection of a signalwhich is obtained by cancelling a symbol candidate of each survivingpath up to a previous stage, from a reception signal is performed. Then,in the ASESS method, a symbol candidate on a current rank of a survivingpath having the minimum representative cumulative metric is set as asurviving candidate by using a symbol ranking table, so as to reduce theprocessing amount. The symbol ranking table is a table which stores aresult obtained by ranking symbol candidates in the order of shorterdistance from a region center to a symbol candidate, for each preparedregion.

In the ASESS method, a symbol ranking table on the k-th stage become tobe a table of which the number of words is equal to expression (33) andthe bit width per word is equal to expression (34), in each modulationmethod. However, m denotes a modulation multi-level number of amodulation method.

2^(2N) ^(div) ×min(S _(k) ,m)  (33)

log₂ m  (34)

Here, examples of symbol ranking tables in related art are illustratedin FIGS. 41 to 45. Further, sizes of symbol ranking tables areillustrated in FIG. 46. Here, examples of symbol ranking tables havingdifferent N_(div) in the same modulation method are illustrated, but itis sufficient to obtain a symbol ranking table of at least one type ofN_(div) in the same modulation method.

As illustrated in FIGS. 41 to 46, the size of a symbol ranking table isincreased as the modulation multi-level number and the number of regionsare increased. When the size of a symbol ranking table is increased,memory capacity of a device is increased.

The technique disclosed herein has made in view of the abovedescription, and it is desirable to provide a wireless device, awireless device control method, and a wireless device control programthat realize reduction of the size of a symbol ranking table.

Embodiments of a wireless device, a wireless device control method, anda wireless device control program according to the present disclosurewill be described in detail below with reference to the accompanyingdrawings. However, the present disclosure is not limited by theseembodiments.

(Solving Aspect 1)

A basic idea of a first solving aspect of the present disclosure isfirst described. A current rank of each surviving path according to arelated art example is first considered. FIGS. 1A to 1C illustrate acomplementary cumulative distribution function (CCDF) of current ranksof respective surviving paths at stage end. More specifically, FIGS. 1Ato 1C illustrate a CCDF of current ranks for every surviving path at thestage end when the number of transmission antennas is 4, the number ofreception antennas is 4, a modulation method of transmission data ofeach of the transmission antennas is 64QAM, and the number of survivingcandidates is S1=S2=S3=S4=64. However, only 10 surviving paths areillustrated in an ascending order of cumulative metrics up to a previousstage because a current rank of a surviving path of which a cumulativemetric up to the previous stage is smaller tends to be larger. FromFIGS. 1A to 1C, it is understood that there is a small probability thata current rank has a large value.

Accordingly, in the first aspect, a surviving path of which a currentrank is equal to or lower than a predetermined rank upper limit valueMAX_RANK (<m) and a representative cumulative metric has the minimumvalue is selected. Accordingly, a current rank does not become to belarger than the MAX_RANK, enabling the number of words of a symbolranking table to be expression (35). Therefore, according to the firstaspect, it is possible to reduce the size of a symbol ranking table.

2^(2N) ^(div) ×MAX_RANK  (35)

Embodiment 1

Embodiment 1 is an embodiment to which the first aspect is applied. FIG.2 illustrates the configuration of a MIMO system. As depicted in FIG. 2,the MIMO system includes a transmitter 100 and a receiver 200. Thetransmitter 100 includes an error correction encode unit 102, amodulation unit 104, a plurality of transmission units 106, and aplurality of transmission antennas 108.

The error correction encode unit 102 performs error-correction-encode oftransmission data. The modulation unit 104 performs modulation such asQPSK, 16QAM, and 64QAM so as to separate transmission data into streams.The transmission unit 106 up-converts a signal obtained by themodulation of the modulation unit 104 into a signal of a wirelessfrequency and simultaneously transmits the signal from the transmissionantenna 108.

The receiver 200 includes a plurality of reception antennas 202,reception units 204, a demodulation unit 208, an error correction decodeunit 214, a central processing unit (CPU) 260, and a memory 262. Thedemodulation unit 208 includes a channel estimation unit 210 and a MIMOstream separation unit 212.

The reception unit 204 converts a signal which is received at thereception antenna 202 into a baseband signal. The channel estimationunit 210 receives a pilot signal or the like which is transmitted fromthe transmitter 100, so as to estimate a propagation path. The MIMOstream separation unit 212 performs stream separation processing byusing a reception signal and a channel estimation value. The errorcorrection decode unit 214 performs error-correction-decode of aseparated stream.

The memory 262 includes a read only memory (ROM) which stores data forexecuting various functions of the receiver 200 and various types ofprograms for executing various functions of the receiver 200. The memory262 further includes a random access memory (RAM) which stores a programwhich is to be executed among the various types of programs which arestored in the ROM.

The CPU 260 is an arithmetic processing unit which executes varioustypes of programs which are stored in the memory 262. The CPU 260executes the various types of programs which are stored in the memory262, so as to control the receiver 200. Here, programs which areexecuted in the CPU 260 are not only stored in the memory 262 but alsomay be recorded in a distributable storage medium such as a compact disc(CD)-ROM and a memory medium so as to be read out of the storage mediumand executed. Further, programs may be stored in a server which isconnected via a network and the program may be set to be operated on theserver, so as to provide a service to the receiver 200 which isconnected via the network, depending on a request from the receiver 200which is a request source.

FIG. 3 illustrates a configuration example of the MIMO stream separationunit of Embodiment 1. As depicted in FIG. 3, the MIMO stream separationunit 212 includes a QR decomposition unit 216, a MIMO demodulation unit222, and a log likelihood ratio (LLR) calculation unit 254. The QRdecomposition unit 216 includes a QR decomposition processing unit 218and a reception signal conversion unit 220. The MIMO demodulation unit222 includes a first stage processing unit 224, a second stageprocessing unit 234, . . . , and an N-th stage processing unit 244.

The first stage processing unit 224 includes a region detection unit226, a surviving symbol selection unit 228, a metric calculation unit230, and a symbol ranking table 232. The second stage processing unit234 includes a region detection unit 236, a surviving symbol selectionunit 238, a metric calculation unit 240, and a size reduction typesymbol ranking table 242. The N-th stage processing unit 244 includes aregion detection unit 246, a surviving symbol selection unit 248, ametric calculation unit 250, and a size reduction type symbol rankingtable 252.

The QR decomposition unit 216 performs QR decomposition to decompose achannel matrix into a unitary matrix Q and an upper triangular matrix R,as expressed in expression (36).

$\begin{matrix}{H = {{QR} = {\begin{pmatrix}q_{11} & q_{12} & \cdots & q_{1,N} \\q_{21} & q_{22} & \cdots & q_{2,N} \\\vdots & \vdots & \ddots & \vdots \\q_{N,1} & q_{N,2} & \cdots & q_{N,N}\end{pmatrix}\begin{pmatrix}r_{11} & r_{12} & \cdots & r_{1,N} \\\; & r_{22} & \cdots & r_{2,N} \\\; & \; & \ddots & \vdots \\\; & O & \; & r_{N,N}\end{pmatrix}}}} & (36)\end{matrix}$

Here, it is possible to set a diagonal element of the matrix R to apositive real number by appropriately selecting a unitary matrix Q. Aunitary conversion unit multiplies a reception signal vector y by aHermitian conjugate of the unitary matrix Q so as to obtain a unitaryconversion vector z expressed as expression (37).

z=Q ^(H) y  (37)

At this time, a relationship of expression (38) is established betweenthe unitary conversion vector z and a transmission stream vector x.

$\begin{matrix}{u_{N} = \frac{z_{N}}{r_{N,N}}} & (39)\end{matrix}$

The region detection unit 226 of the first stage performs regiondetection of the lowest stage by expression (39) so as to determine aregion number ε⁽¹⁾ of a region to which u_(N) belongs.

$\begin{matrix}{u_{N} = \frac{z_{N}}{r_{N,N}}} & (39)\end{matrix}$

The surviving symbol selection unit 228 refers to a symbol ranking tableΩ which stores a result of ranking of symbol candidates which arepreliminarily ranked in the order of shorter distance from a regioncenter to each symbol candidate c_(N,i) (i=1, 2, . . . , m_(N)) of atransmission signal x_(N), for each region number. Then, the survivingsymbol selection unit 228 sets as many candidate replicas as S₁, thenumber of surviving candidates from the upper order of the ranking, assurviving paths of the first stage. The surviving symbol selection unit228 sets the surviving path as expression (40).

Π₁ ⁽¹⁾(i)=Ω^((m) ^(N) ⁾(ε,i),i=1,2, . . . ,S ₁  (40)

Here, Π(k)(i) represents the i-th surviving path on the k-th stage.Π_(j) ^((k))(i) denotes a path on the j-th stage 0=1, 2, . . . , k) ofthe i-th surviving path on the k-th stage. Further, Π_(a˜b) ^((k))(i)(a<b) represents a partial path from the a-th stage to the b-th stage ofthe i-th surviving path on the k-th stage. For example, expression (42),expression (43), and expression (44) are obtained in a case ofexpression (41).

Π⁽⁴⁾={(0, 1, 2, 3),(0,2,1,1),(1,2,3,0),(2,0,0,1)}  (41)

Π⁽⁴⁾(2)=(0,2,1,1)  (42)

Π₃ ⁽⁴⁾(3)=3  (43)

Π_(1˜3)(1)=(0,1,2)  (44)

The metric calculation unit 230 calculates a metric such as a squaredEuclidean distance. In a case of a squared Euclidean distance,expression (45) is obtained. Here, Ω⁽⁴⁾, Ω⁽¹⁶⁾, and Ω⁽⁶⁴⁾ respectivelyrepresent symbol ranking tables with respect to QPSK, 16QAM, and 64QAM.

d ₁(Π₁ ⁽¹⁾(i))=|z _(N) −r _(N,N) c _(N,Π) ₁ ₍₁₎ _((i))|² ,i=1,2, . . .,S ₁  (45)

Expression (46) expresses a symbol number, which is stored in the symbolranking table, on the i-th order of the ranking with respect to theregion number ε⁽¹⁾. Here, c_(N,i) denotes a signal point of a modulationmethod which is used in transmission of a transmission stream x_(N).Typical examples of the modulation method include QPSK, 16QAM, and64QAM, but the embodiment is not limited to a specific modulationmethod.

Ω^((m) ^(N) ⁾(ε⁽¹⁾ ,i)  (46)

Processing on the following k-th stage (for example, the second stage)is described. The region detection unit on the k-th stage performsregion detection by expression (47) in which respective candidatereplicas of S_(k-1) surviving paths, which are survived on the k−1-thstage, are respectively cancelled from a reception signal Z_(N-k+1)which is the k-th lowest signal, so as to determine a region numberε^((k))(i) of a region to which u expressed as expression (48) belongs.

$\begin{matrix}{{{u_{{N - k + 1},i}\left( {\Pi^{({k - 1})}(i)} \right)} = {\left( {z_{N - k + 1} - {\sum\limits_{p = 1}^{k - 1}\; {r_{{N - k + 1},{N - p + 1}}c_{{N - p + 1},{\Pi_{p}^{({k - 1})}{(i)}}}}}} \right)/r_{{N - k + 1},{N - k + 1}}}},} & (47) \\{\mspace{79mu} {{{i = 1},2,\ldots \mspace{14mu},S_{k - 1}}\mspace{20mu} {u_{{N - k + 1},i}\left( {\Pi^{({k - 1})}(i)} \right)}}} & (48)\end{matrix}$

A surviving symbol selection unit (for example, the surviving symbolselection unit 238) adaptively selects a surviving path on the k-thstage as following. The surviving symbol selection unit firstinitializes a representative cumulative metric value E(i) and a currentrank ρ(i) of each surviving path which is survived on the k−1-th stageso as to obtain expression (49), expression (50), and expression (51).

E(i):=d _(k-1)(Π^((k-1))(i))  (49)

ρ(i):=1  (50)

q:=1  (51)

The surviving symbol selection unit selects a candidate replica on theρ(i_(min))-th order of the ranking of i_(min) at which ρ(i)≦MAX_RANK_(k)is satisfied and E(i) has the minimum value, from the size reductiontype symbol ranking table. The surviving symbol selection unit sets theq-th surviving path on the k-th stage as expression (52) and expression(53).

$\begin{matrix}{{{\Pi_{{l\sim k} - 1}^{(k)}(q)} = {\Pi^{({k - 1})}\left( i_{\min} \right)}}{{\Pi_{k}^{(k)}(q)} = {\Omega^{(m_{N - k + 1})}\left( {{ɛ^{(k)}\left( i_{\min} \right)},{\rho \left( i_{\min} \right)}} \right)}}} & (52) \\{i_{\min} = {\arg\limits_{{\rho {(i)}} \leq {{{MAX}\_}\; {RANK}_{k}}}\left( {\min \left\lbrack {E(i)} \right\rbrack} \right)}} & (53)\end{matrix}$

Here, MAX_RANK_(k) is a predetermined rank upper limit value of the k-thstage. MAX_RANK_(k) may be set to have a different value for everymodulation method of the k-th stage. Further, it is assumed thatS_(k-1)×MAX_RANK_(k)≧S_(k) is satisfied so as to enable selection ofS_(k) surviving candidates.

A metric calculation unit (for example, the metric calculation unit 240)calculates a cumulative metric as expression (54).

$\begin{matrix}{{d_{k}\left( {\Pi^{(k)}(q)} \right)} = {{d_{k - 1}\left( {\Pi^{({k - 1})}\left( i_{\min} \right)} \right)} + {\begin{matrix}{z_{N - k + 1} - {\sum\limits_{p = 1}^{k - 1}\; {r_{{N - k + 1},{N - p + 1}}c_{{N - p + 1},{\Pi_{p}^{(k)}{(q)}}}}} -} \\{\; {r_{{N - k + 1},{N - k + 1}}c_{{N - k + 1},{\Pi_{k}^{(k)}{(q)}}}}}\end{matrix}}^{2}}} & (54)\end{matrix}$

Then, the metric calculation unit updates the cumulative metric asexpression (55), expression (56), and expression (57).

E(i _(min)):=d _(k)(Π^((k))(q))  (55)

ρ(i _(min)):=ρ(i _(min))+1  (56)

q:=q+1  (57)

The metric calculation unit performs the above-mentioned processinguntil q reaches the number S_(k) of surviving paths of the k-th stage.Each stage processing unit performs similar processing up to the N-thstage.

Region detection and a size reduction type symbol ranking table are nowdescribed in detail. The symbol ranking table of the first stageprocessing unit may sufficiently have only a sub-set part of S₁ columnson the left side of the symbol ranking tables depicted on FIGS. 41 to45.

A size reduction type symbol ranking table of the k-th stage and regiondetection are described in detail below. As a setting value ofMAX_RANK_(k), examples of expression (58), expression (59), andexpression (60) are illustrated. Here, an example of N=4 is illustrated.Further, this parameter is merely an example and other setting valuesmay be used.

MAX_RANK₂ ^((QPSK))=MAX_RANK₃ ^((QPSK))=MAX_RANK₄ ^((QPSK))=3  (58)

MAX_RANK₂ ^((16QAM))=MAX_RANK₃ ^((16QAM))=MAX_RANK₄ ^((16QAM))=8  (59)

MAX_RANK₂ ^((64QAM))=MAX_RANK₃ ^((64QAM))=MAX_RANK₄ ^((64QAM))=16  (60)

Description of region detection here is common in every stage, so thatan index of a signal for performing region detection is omitted and asignal is denoted as u. FIG. 4 is a flowchart of region detection. Theregion detection unit first sets t to 2 and sets χ mod as expression(61) (S101).

$\begin{matrix}{\chi_{mod} = \left\{ \begin{matrix}{1/\sqrt{2,}} & {{for}\mspace{14mu} {QPSK}} \\{{2/\sqrt{10}},} & {{for}\mspace{14mu} 16\; {QAM}} \\{{4/\sqrt{42}},} & {{for}\mspace{14mu} 64\; {QAM}}\end{matrix} \right.} & (61)\end{matrix}$

Further, the region detection unit determines positive/negative of areal part and an imaginary part of u⁽¹⁾=u (positive/negative of an IQcomponent) so as to determine which quadrant u belongs to, in thefirst-time detection (S102). The region detection unit determineswhether t>N_(div) is satisfied or not (S103). When t>N_(div) issatisfied (S103, Yes), the region detection unit determines a regionnumber (S104). When t>N_(div) is not satisfied (S103, No), the regiondetection unit moves an origin to a center (expression (62)) of thequadrant which is determined on the first-time detection (S105).Further, the region detection unit performs quadrant detection of u⁽²⁾which is obtained by moving the origin to the center (expression (62))of the quadrant which is determined on the first-time detection, in thesecond-time detection (S106). Here, sign(x) is expressed as expression(63).

$\begin{matrix}\left( {{{sign}{\left\{ {{Re}(u)} \right\} \cdot \chi_{mod}}},{{sign}{\left\{ {{Im}(u)} \right\} \cdot \chi_{mod}}}} \right) & (62) \\{{{sign}(x)} = \left\{ \begin{matrix}{1,} & {x \geq 0} \\{{- 1},} & {x < 0}\end{matrix} \right.} & (63)\end{matrix}$

Subsequently, the region detection unit increments t and sets χ mod to χmod/2 (S107). Then, the region detection unit determines whethert≦N_(div) is satisfied or not (S108). When t≦N_(div) is satisfied (S108,Yes), the region detection unit returns to S105 and repeats theprocessing. Here, on t-th time detection, the region detection unitperforms quadrant detection of u^((t)) which is obtained by moving theorigin to a center (expression (64)) of a quadrant which is determinedon the t−1-th time detection.

$\begin{matrix}\begin{pmatrix}{{\sum\limits_{p = 1}^{t - 1}\; {{sign}{\left\{ {{Re}\left( u^{(p)} \right)} \right\} \cdot {\chi_{mod}/2^{p - 1}}}}},} \\{\sum\limits_{p = 1}^{t - 1}\; {{sign}{\left\{ {{Im}\left( u^{(p)} \right)} \right\} \cdot {\chi_{mod}/2^{p - 1}}}}}\end{pmatrix} & (64)\end{matrix}$

When t≦N_(div) is not satisfied (S108, No), the region detection unitdetermines a region number (S109). That is, the region detection unitrepeats the above-mentioned processing N_(div) times in sequence so asto determine which region u belongs to among regions the number of whichis expressed by expression (65).

N _(area)=2^(2N) ^(div)   (65)

Here, an example of a way of assigning a region number of N_(div)=1 inQPSK is described. FIG. 5 illustrates an example of region detection inQPSK (N_(div)=1). Further, FIG. 6 illustrates an example of a sizereduction type symbol ranking table in QPSK and N_(div)=1.

Symbol numbers are held for every region in the order of shorterdistances between a representative point of a region (a symbol positionincluded in a region) and a symbol. A representative point is expressedby expression (66) by using a region number E. Here, bit(ε,n) inexpression (67) denotes a bit value on the n-th (1 to 2N_(div)) bit fromMSB of ε which is expressed by a bit width of 2N_(div)[bit]. In thiscase, a representative point of each region is same as a symbol positionwhich belongs to each region.

$\begin{matrix}\begin{pmatrix}{{\sum\limits_{p = 1}^{N_{div}}\; {{bit\_ sign}{\left( {ɛ,{{2p} - 1}} \right) \cdot {\chi_{mod}/2^{p - 1}}}}},} \\{\sum\limits_{p = 1}^{N_{div}}\; {{bit\_ sign}{\left( {ɛ,{2p}} \right) \cdot {\chi_{mod}/2^{p - 1}}}}}\end{pmatrix} & (66) \\{{{bit\_ sign}\left( {ɛ,n} \right)} = \left\{ \begin{matrix}{1,} & {{{bit}\left( {ɛ,n} \right)} = 0} \\{{- 1},} & {{{bit}\left( {ɛ,n} \right)} = 1}\end{matrix} \right.} & (67)\end{matrix}$

Here, MAX_RANK^((QPSK)) _(k)=3 is set, so that only symbol numbers up tothe third order in the ranking are held. Therefore, as depicted in FIG.6, the number of words of the table is 4 (the number ofregions)×3(MAX_RANK^((QPSK)) _(k))=12. Thus, the table size is ¾ timesas large as that of related art. Here, in a case of N_(div)=1, it isdifficult to discriminate between a symbol which is the second closestto a representative point of a region and a symbol which is the thirdclosest to the representative point. For example, in a case of a region0, it is difficult to determine which of 10 (decimal: 2) and 01(decimal: 1) is closer, so that a table may be arbitrarily formed inadvance to determine which goes to the second order or the third order.

Further, the way of assigning a region number is an example and a regionnumber may be arbitrarily assigned. In this case, rows of the sizereduction type symbol ranking table depicted in FIG. 6 are merelyexchanged. The same goes for the following examples.

Here, in the example in QPSK and N_(div)=1, it is difficult todiscriminate between a symbol which is the second closest to arepresentative point of a region and a symbol which is the third closestto the representative point, so that a table may be arbitrarily formedto determine which goes to the second order or the third order. Further,accuracy of the ranking may be improved by increasing the number N_(div)of times of quadrant detection, as well.

An example in N_(div)=2 in QPSK is described. FIG. 7 illustrates anexample of region detection in QPSK (N_(div)=2). In this case, arepresentative point of each region is any one of (±{1,3}/2√2,±{1,3}/2√2).

Further, a size reduction type symbol ranking table is described. FIG. 8illustrates an example of a size reduction type symbol ranking table inQPSK and N_(div)=2. In regions 1, 2, 4, 7, 8, 11, 13, and 14, a symbolwhich is the second closest to a representative point of a region and asymbol which is the third closest to the representative point arediscriminated from each other. Thus, accuracy of the size reduction typesymbol ranking table is improved. Further, MAX_RANK^((QPSK)) _(k)=3 isset, so that only symbol numbers up to the third order in the rankingare held.

A way of assigning a region number and an example of a size reductiontype symbol ranking table in 16QAM and N_(div)=2 are now described.

FIG. 9 illustrates an example of 16QAM (N_(div)=2). FIG. 10 illustratesan example of a size reduction type symbol ranking table in 16QAM(N_(div)=2).

Outline digits in symbols in FIG. 9 represent symbol numbers (obtainedby converting bit columns into decimal numbers). In this case, arepresentative point of each region is same as a symbol position whichis included in the region. As depicted in FIG. 10, MAX_RANK^((16QAM))_(k)=8 is set, so that the size reduction type symbol ranking tableholds only symbol numbers up to the eighth order of the ranking.

A way of assigning a region number and an example of a size reductiontype symbol ranking table in 16QAM and N_(div)=3 are now described. FIG.11 illustrates an example of 16QAM (N_(div)=3). FIG. 12 illustrates anexample of a size reduction type symbol ranking table in 16QAM(N_(div)=3).

In this case, a representative point of each region is any one of(±{1,3,5,7}/2√10, ±{1,3,5,7}/2√10). As depicted in FIG. 12,MAX_RANK^((16QAM)) _(k)=8 is set, so that the size reduction type symbolranking table holds only symbol numbers up to the eighth order of theranking.

A way of assigning a region number and an example of a size reductiontype symbol ranking table in 64QAM and N_(div)=3 are now described. FIG.13 illustrates an example of 64QAM (N_(div)=3). FIG. 14 illustrates anexample of a size reduction type symbol ranking table in 64QAM andN_(div)=3.

In this case, a representative point of each region is same as a symbolposition which is included in the region. As depicted in FIG. 14,MAX_RANK^((16QAM)) _(k)=32 is set, so that the size reduction typesymbol ranking table holds only symbol numbers up to the 32nd order ofthe ranking.

As described above, it is understood that it is sufficient for the sizereduction type symbol ranking table to have only a sub-set part ofMAX_RANK_(k) columns on the left side of the symbol ranking tablesdepicted in FIGS. 41 to 45. That is, it is understood that the sizereduction type symbol ranking table may be easily applied to a case of asetting value which is different from a setting value example ofMAX_RANK_(k) illustrated in this example.

A concrete example of region detection is now described by taking a caseof 64QAM as an example. FIGS. 15A to 15C illustrate an example of regiondetection. In the example of FIGS. 15A to 15C, u are denoted by a starand N_(div)=3 holds. As the lower left of FIGS. 15A to 15C, a region isdivided into 64 regions and region numbers are assigned to the regionsas numbers of the upper left in the regions. Since both of a real partand an imaginary part are negative in positive/negative determination inthe first-time quadrant detection, it is determined that u belongs tothe fourth quadrant. Then, since it is determined that u belongs to thefourth quadrant in the first-time quadrant detection, an origin is movedto (−4/√42, −4/√42). Expression (68) is obtained by subtracting acoordinate which is to be the next origin from u.

u ⁽²⁾ ={Re(u)+4/√{square root over (42)}}+j{Im(u)+4/√{square root over(42)}}  (68)

Positive/negative determination of a real part and an imaginary part ofu⁽²⁾ is performed similarly in the second-time quadrant detection, andthe first quadrant is detected as a result of the determination. Theorigin is moved to (−2/√42, −2/√42) as is the case with the first-timequadrant detection. The third-time quadrant detection is performed andthe third quadrant is detected. As a result, it is determined that ubelongs to a region of region number 50.

Returning to the description of FIG. 3, the LLR calculation unit 254calculates a bit LLR for every transmission stream. The LLR calculationunit 254 first searches the minimum value of a cumulative metric so asto set a surviving path of which a cumulative metric has the minimumvalue, as a combination of maximum likelihood symbols. A bit LLR of then-th bit of the first stream x_(l) is difference between a sum metricwith respect to the maximum likelihood symbol combination and theminimum value of a cumulative metric with respect to a symbol having areversal value of the n-th bit of the maximum likelihood symbol.Specifically, a bit LLR is expressed as expression (72) under conditionsof expression (69), expression (70), and expression (71).

$\begin{matrix}{\Pi^{{(N)},{ML}} = {\arg \; {\min\left\lbrack {d_{N}\left( {\Pi^{(N)}(i)} \right\rbrack} \right.}}} & (69) \\{{d_{l,\min}\left( {b_{n} = {{bit}\left( {\Pi_{l}^{{(N)},{ML}},n} \right)}} \right)} = {d\left( \Pi^{{(N)},{ML}} \right)}} & (70) \\{{d_{l,\min}\left( {b_{n} = {{invbit}\left( {\Pi_{l}^{{(N)},{ML}},n} \right)}} \right)} = {\min\limits_{{{bit}{({\Pi_{1}^{(N)},n})}} = {{invbit}{({\Pi_{l}^{{(N)},{ML}},n})}}}\left\lbrack {d\left( \Pi_{l}^{(N)} \right)} \right\rbrack}} & (71) \\{{{LLR}_{l}(n)} = {{d_{l,\min}\left( {b_{n} = 1} \right)} - {d_{l,\min}\left( {b_{n} = 0} \right)}}} & (72)\end{matrix}$

Here, I denotes a stream number, and bit(x,n) and invbit(x,n)respectively denote the n-th bit value and the n-th reversal bit valueof x. Though a bit LLR is difference of metrics in the abovedescription, a bit LLR may be expressed as expression (73) by squareroots.

LLR_(l)(n)=√{square root over (d _(l,min)(b _(n)=1))}−√{square root over(d _(l,min)(b=0))}  (73)

A flowchart of the MIMO stream separation unit of Embodiment 1 is nowdescribed. FIG. 16 is a flowchart of Embodiment 1. As depicted in FIG.16, the QR decomposition processing unit 218 performs QR decomposition(S201). Subsequently, the reception signal conversion unit 220 performsreception signal conversion and calculates a unitary conversion vector z(S202). Then, the first stage processing unit 224 performs first stageprocessing (S203). The first stage processing will be described indetail later.

Subsequently, the MIMO demodulation unit 222 sets k to 2 (S204). Then,the k-th stage processing unit performs k-th stage processing (S205).The k-th stage processing will be described in detail later.Subsequently, the MIMO demodulation unit 222 increments k (S206) so asto determine whether k≦N is satisfied or not (S207).

When k≦N is satisfied (S207, Yes), the MIMO demodulation unit 222returns to S205 and repeats the processing. On the other hand, when k≦Nis not satisfied (S207, No), the LLR calculation unit 254 calculates aLLR as described above (S208).

A flowchart of the first stage processing is now described. FIG. 17 is aflowchart of the first stage processing. As depicted in FIG. 17, theregion detection unit 226 detects a region of u_(N) (S301).Subsequently, the first stage processing unit 224 sets q to 1 (S302).Then, the surviving symbol selection unit 228 selects a surviving symbol(S303). The selection of a surviving symbol will be described later.

Subsequently, the metric calculation unit 230 calculates a metric asdescribed above (S304). Then, the first stage processing unit 224increments q (S305) so as to determine whether q≦S₁ is satisfied or not(S306). When q≦S₁ is satisfied (S306, Yes), the first stage processingunit 224 returns to S303 and repeats the processing. On the other hand,when q≦S₁ is not satisfied (S306, No), the first stage processing unit224 ends the processing.

A flowchart of surviving symbol selection of the first stage processingis now described. FIG. 18 is a flowchart of the surviving symbolselection of the first stage processing. As depicted in FIG. 18, thesurviving symbol selection unit 228 selects a symbol in the ε⁽¹⁾-th rowand q-th column of a symbol ranking table Ω^((mk)) so as to set thesymbol as a surviving path (S401).

A flowchart of the k-th stage processing is now described. FIG. 19 isflowchart of the k-th stage processing. As depicted in FIG. 19, the k-thstage processing unit sets i to 1 (S501). Subsequently, the regiondetection unit performs region detection as expression (47) (S502).Then, the region detection unit increments i (S503). After that, theregion detection unit determines whether i≦S_(k-1) is satisfied or not(S504). When i≦S_(k-1) is satisfied (S504, Yes), the region detectionunit returns to S502 and repeats the processing.

On the other hand, when i≦S_(k-1) is not satisfied (S504, No), thesurviving symbol selection unit initializes a representative cumulativemetric value E(i) and a current rank ρ(i) of each surviving path whichis survived in the k−1-th stage as expression (49), expression (50), andexpression (51) (S505). Subsequently, the surviving symbol selectionunit selects i_(min) at which ρ(i)≦MAX_RANK_(k) is satisfied and therepresentative cumulative metric E(i) has the minimum value (S506).

Then, the surviving symbol selection unit selects a surviving symbol(S507). The selection of a surviving symbol will be described later.Subsequently, the metric calculation unit calculates a cumulative metricas expression (54) (S508). Then, the metric calculation unit updates thecumulative metric as expression (55), expression (56), and expression(57) (S509).

Subsequently, the metric calculation unit determines q≦S_(k) issatisfied or not (S510). When q≦S_(k) is satisfied (S510, Yes), thesurviving symbol selection unit returns to S506 and repeats theprocessing. On the other hand, when q≦S_(k) is not satisfied (S510, No),the metric calculation unit ends the processing.

A flowchart of the surviving symbol selection in the k-th stageprocessing is now described. FIG. 20 is a flowchart of the survivingsymbol selection in the k-th stage processing. As depicted in FIG. 20,the surviving symbol selection unit adds a symbol in theε^((k))(i_(min))-th row and ρ(i_(min))-th column of the size reductiontype symbol ranking table Ω to surviving paths (S601).

As described above, according to Embodiment 1, a current rank of eachsurviving path does not become larger than the predetermined rank upperlimit value MAX_RANK, so that it is sufficient for the symbol rankingtable to hold only symbol candidates which are equal to or smaller thanthe MAX_RANK. As a result, according to Embodiment 1, it is possible toreduce the size of a symbol ranking table compared to related art. Here,MAX_RANK, and N_(div) are not limited to the example described in theembodiment.

(Solving Aspect 2)

A basic idea of a second solving aspect of the present disclosure is nowdescribed. In the second aspect, a symbol ranking table is separatedinto a symbol higher order ranking table which holds symbol candidateswhich are placed on rank orders higher than a certain rank order ρ_(th)in ranking and a symbol lower order ranking table which holds symbolcandidates which are placed on rank orders equal to or lower than ρ_(th)in the ranking. Further, in the second aspect, the symbol lower orderranking table holds symbol candidates in the order of shorter distancesfrom a representative point of N_(adj) regions which are adjacent toeach other. Accordingly, it is possible to reduce the number of words ofthe symbol lower order ranking table and thus reduce the table size.

FIG. 21 schematically illustrates the second aspect. As depicted in FIG.21, in a case where the number of regions is 64 in 16QAM, for example,higher order symbol candidates on the first to eighth orders are commonin regions 0, 1, 2, and 3, and lower order symbol candidates on theeighth to 16th orders are also common. In the second aspect, regardingsymbol candidates on higher orders, symbol candidates which are rankedfor respective regions are held in the symbol higher order ranking tablein order to maintain ranking accuracy. Further, in the second aspect,regarding symbol candidates on lower orders, ranking accuracy is reducedand symbol candidates are held in the symbol lower order ranking tablein the order of shorter distances from a representative point ofadjacent regions for every group of adjacent regions.

Embodiment 2

Embodiment 2 is an embodiment to which the second aspect is applied.FIG. 22 illustrates a configuration example of a MIMO stream separationunit of Embodiment 2. As depicted in FIG. 22, a MIMO stream separationunit 312 includes a QR decomposition unit 316, a MIMO demodulation unit322, and a LLR calculation unit 354. The QR decomposition unit 316includes a QR decomposition processing unit 318 and a reception signalconversion unit 320. The MIMO demodulation unit 322 includes a firststage processing unit 324, a second stage processing unit 334, . . . ,and an N-th stage processing unit 344.

The first stage processing unit 324 includes a region detection unit326, a surviving symbol selection unit 328, a metric calculation unit330, a symbol higher order ranking table 331, and a symbol lower orderranking table 332. The second stage processing unit 334 includes aregion detection unit 336, a surviving symbol selection unit 338, ametric calculation unit 340, a symbol higher order ranking table 341,and a symbol lower order ranking table 342. The N-th stage processingunit 344 includes a region detection unit 346, a surviving symbolselection unit 348, a metric calculation unit 350, a symbol higher orderranking table 351, and a symbol lower order ranking table 352.

As depicted in FIG. 22, Embodiment 2 is different from Embodiment 1 inthat the symbol ranking table 232 and the size reduction type symbolranking tables 242 and 252 of Embodiment 1 are exchanged into the symbolhigher order ranking tables 331, 341, and 351 and the symbol lower orderranking tables 332, 342, and 352. Accordingly, description ofconfigurations same as those of Embodiment 1 is arbitrarily omitted andthe configuration different from Embodiment 1 is mainly described.

The surviving symbol selection unit 328 refers to the symbol higherorder ranking table 331 (Ω₁) or the symbol lower order ranking table 332(Ω₂) and sets as many candidate replicas as S₁, the number of survivingcandidates from the higher order in the ranking, as surviving paths ofthe first stage. The surviving path is expressed by expression (74).

$\begin{matrix}{{\Pi_{1}^{(1)}(i)} = \left\{ {\begin{matrix}{{\Omega_{1}^{(m_{N})}\left( {ɛ,i} \right)},} & {i \leq \rho_{th}} \\{{\Omega_{2}^{(m_{N})}\left( {\left\lfloor {ɛ/N_{adj}} \right\rfloor,{i - \rho_{th}}} \right)},} & {i > \rho_{th}}\end{matrix},{i = 1},2,\ldots \mspace{14mu},S_{1}} \right.} & (74)\end{matrix}$

A surviving symbol selection unit of a k-th stage processing unitadaptively selects a surviving path on the k-th stage as following. Thesurviving symbol selection unit first initializes a representativecumulative metric value E(i) and a current rank ρ(i) of each survivingpath which is survived on the k−1-th stage so as to obtain expression(75), expression (76), and expression (77).

E(i):=d _(k-1)(Π^((k-1))(i))  (75)

ρ(i):=1  (76)

q:=1  (77)

The surviving symbol selection unit selects a candidate replica on theρ(i_(min))-th order in the ranking of i_(min) at which ρ(i)≦m_(N-k+1) issatisfied and E(i) has the minimum value, from the symbol higher orderranking table Ω₁ or the symbol lower order ranking table Ω₂. Then, thesurviving symbol selection unit sets the q-th surviving path on the k-thstage as expression (78).

$\begin{matrix}{\mspace{79mu} {{{\Pi_{{l\sim k} - 1}^{(k)}(q)} = {\Pi^{({k - 1})}\left( i_{\min} \right)}}{{\Pi_{k}^{(k)}(q)} = \left\{ {{\begin{matrix}{{\Omega_{1}^{(m_{N - k + 1})}\left( {{ɛ^{(k)}\left( i_{\min} \right)},{\rho \left( i_{\min} \right)}} \right)},} & {{\rho \left( i_{\min} \right)} \leq \rho_{th}} \\{{\Omega_{2}^{(m_{N - k + 1})}\left( {\left\lfloor {{ɛ^{(k)}\left( i_{\min} \right)}/N_{adj}} \right\rfloor,{{\rho \left( i_{\min} \right)} - \rho_{th}}} \right)},} & {{\rho \left( i_{\min} \right)} > \rho_{th}}\end{matrix}\mspace{20mu} i_{\min}} = {\arg\limits_{{\rho {(i)}} \leq m_{N - k + 1}}\left( {\min \left\lbrack {E(i)} \right\rbrack} \right)}} \right.}}} & (78)\end{matrix}$

The symbol higher order ranking table and the symbol lower order rankingtable are now described in detail. In a case of QPSK and N_(div)=2, asdepicted in FIGS. 42 and 7, symbol candidates included from the firstorder to the third order of the ranking are common among four regionswhich are adjacent to each other and it is apparent that symbolcandidates on the fourth order are common in four regions which areadjacent to each other as well. Therefore, an example of a case inρ_(th)=3 and N_(adj)=4 is illustrated in FIGS. 23A and 23B. FIGS. 23Aand 23B respectively illustrate examples of a symbol higher orderranking table and a symbol lower order ranking table in QPSK andN_(djv)=2. As depicted in FIGS. 23A and 23B, it is understood that thetotal number of words of the symbol higher order ranking table and thesymbol lower order ranking table is 16×3+4×1=52 and the table size is52/64 compared to the related art example.

A table example and a table designing method when ρ_(th)=8 and N_(adj)=4in a case of 16QAM and N_(div)=3 is now described. First, regions 0, 1,2, and 3 are considered. Referring to FIG. 44, symbol candidatesincluded from the first order to the eighth order in the ranking arecommon. Further, symbol candidates included from the ninth order to the16th order in the ranking are also common. The symbol lower orderranking table is designed in the order of shorter distances from arepresentative point (a position of a symbol number 3) of four regions(regions 0, 1, 2, 3) which are adjacent to each other.

Subsequently, regions 4, 5, 6, and 7 are considered. Referring to FIG.44, symbol candidates included from the first order to the eighth orderin the ranking of each region are;

region 4: symbol number (0, 1, 2, 3, 4, 6, 7, 8),

region 5: symbol number (0, 1, 2, 3, 4, 5, 6, 7),

region 6: symbol number (0, 1, 2, 3, 4, 6, 8, 9), and

region 7: symbol number (0, 1, 2, 3, 4, 6, 7, 8).

Since symbol candidates are not completely common among regions unlikethe case of the regions 0, 1, 2, and 3, two numbers among symbol numbers5, 7, 8, and 9 have to be migrated into the symbol lower order rankingtable so as to make symbol candidates common. In this example, a squareerror with respect to an order in an original symbol ranking table (FIG.44) is reduced.

When it is assumed that a symbol number has become to be placed on theninth order which is the highest order of the symbol lower order rankingtable by migrating the symbol numbers into the symbol lower orderranking table, (9-8)̂2=1 is obtained because the symbol number 5 of theregion 5 is placed on the eighth order. The symbol number 7 of theregion 4 is placed on the seventh order, the symbol number 7 of theregion 5 is placed on the seventh order, and the symbol number 7 of theregion 7 is placed on the eighth order, so that (9-7)̂2+(9-7)̂2+(9-8)̂2=9is obtained.

The symbol number 8 of the region 4 is placed on the eighth order, thesymbol number 8 of the region 5 is placed on the ninth order, and thesymbol number 8 of the region 7 is placed on the seventh order, so that(9-8)̂2+(9-9)̂2+(9-7)̂2=5 is obtained. The symbol number 9 of the region 6is placed on the eighth order, so that (9-8)̂2=1 is obtained.

In order to reduce a square error, it is favorable that the symbolnumbers 7 and 8 are left in the symbol higher order ranking table andthe symbol numbers 5 and 9 are migrated into the symbol lower orderranking table. Accordingly, tables are designed such that the symbolnumbers 0, 1, 2, 3, 4, 6, 7, and 8 are held in the symbol higher orderranking table in the order of shorter distance from a representativepoint of each region and symbol numbers other than the symbol numbers 0,1, 2, 3, 4, 6, 7, and 8 are held in the symbol lower order ranking tablein the order of shorter distance from a representative point (symbolnumber 2) of the four regions (regions 4, 5, 6, and 7) which areadjacent to each other.

In a similar manner, regarding the regions 8, 9, 10, and 11, symbolnumbers included from the first order to the eighth order in the rankingare;

region 8: symbol number (0, 1, 2, 3, 4, 8, 9, 11),

region 9: symbol number (0, 1, 2, 3, 4, 6, 8, 9),

region 10: symbol number (0, 1, 2, 3, 8, 9, 10, 11), and

region 11: symbol number (0, 1, 2, 3, 4, 8, 9, 11).

Therefore, two symbol numbers among the symbol numbers 4, 6, 10, and 11have to be migrated into the symbol lower order ranking table. In asimilar manner,

symbol number 4: (9-7)̂2+(9-7)̂2+(9-7)̂2=12,

symbol number 6: (9-8)̂2=1,

symbol number 10: (9-8)̂2=1, and

symbol number 11: (9-8)̂2+(9-7)̂2+(9-8)̂2=6 are obtained.

Therefore, the symbol numbers 6 and 10 are migrated into the symbollower order ranking table. Accordingly, tables are designed such thatthe symbol numbers 0, 1, 2, 3, 4, 8, 9, and 11 are held in the symbolhigher order ranking table in the order of shorter distance from arepresentative point of each region and symbol numbers other than thesymbol numbers 0, 1, 2, 3, 4, 8, 9, and 11 are held in the symbol lowerorder ranking table in the order of shorter distance from arepresentative point (symbol number 1) of the four regions (regions 8,9, 10, and 11) which are adjacent to each other.

Regarding the regions 12, 13, 14, and 15, symbol numbers included fromthe first order to the eighth order in the ranking are;

region 12: symbol number (0, 1, 2, 3, 4, 6, 8, 9),

region 13: symbol number (0, 1, 2, 3, 4, 6, 8, 12),

region 14: symbol number (0, 1, 2, 3, 4, 8, 9, 12), and

region 15: symbol number (0, 1, 2, 4, 6, 8, 9, 12).

Therefore, one symbol number among the symbol numbers 3, 6, 9, and 12has to be migrated into the symbol lower order ranking table. In asimilar manner,

symbol number 3: (9-4)̂2+(9-7)̂2+(9-7)̂2=33,

symbol number 6: (9-7)̂2+(9-4)̂2+(9-8)̂2=30,

symbol number 9: (9-8)̂2+(9-4)̂2+(9-7)̂2=30, and

symbol number 12: (9-8)̂2+(9-8)̂2+(9-4)̂2=27 are obtained.

Therefore, the symbol number 12 is migrated into the symbol lower orderranking table. Accordingly, tables are designed such that the symbolnumbers 0, 1, 2, 3, 4, 6, 8, and 9 are held in the symbol higher orderranking table in the order of shorter distance from a representativepoint of each region and symbol numbers other than the symbol numbers 0,1, 2, 3, 4, 6, 8, and 9 are held in the symbol lower order ranking tablein the order of shorter distance from a representative point (symbolnumber 1) of the four regions (regions 8, 9, 10, and 11) which areadjacent to each other.

A symbol higher order ranking table and a symbol lower order rankingtable which are a result of similar processing with respect to regions13 to 63 are illustrated in FIGS. 24A and 24B. FIGS. 24A and 24Brespectively illustrate examples of a symbol higher order ranking tableand a symbol lower order ranking table in 16QAM and N_(div)=3. Apparentfrom FIGS. 24A and 24B, the total number of words of the symbol higherorder ranking table and the symbol lower order ranking table isexpressed as expression (79).

2^(2N) ^(div) ×ρ_(th)+2^(2N) ^(div) ×(m−ρ _(th))/N_(adj)=64×8+64×(16−8)/4=640  (79)

Accordingly, the size of the symbol higher order ranking table and thesymbol lower order ranking table is 62.5% of the size of a symbolranking table of related art. Examples of a symbol higher order rankingtable and a symbol lower order ranking table, which are designed byusing a similar method to 16QAM described above, in a case of ρ_(th)=32and N_(adj)=4 in 64QAM and N_(div)=3 are respectively illustrated inFIGS. 25 and 26. FIG. 25 illustrates an example of a symbol higher orderranking table in 64QAM and N_(div)=3. FIG. 26 illustrates an example ofa symbol lower order ranking table in 64QAM and N_(div)=3. The totalnumber of words in the symbol higher order ranking table and the symbollower order ranking table is 2560. Thus, the size of the symbol higherorder ranking table and the symbol lower order ranking table is 62.5% ofthe size of a symbol ranking table of related art.

An example in ρ_(th) and N_(adj) has been described here, but it ispossible to design a symbol higher order ranking table and a symbollower order ranking table in ρ_(th) and N_(adj) which have differentvalues as well, by using the table designing method which is describedabove in detail.

Further, in the above description, when symbols included from the firstorder to the ρ_(th)-th order in the ranking are not common, symbolnumbers are selected in an evaluation standard of a smaller squareerror. However, other methods may be used. For example, in a case of theregions 4, 5, 6, and 7, it is sufficient to select two symbol numbersamong the symbol numbers 5, 7, 8, and 9. In this case, two symbolnumbers may be arbitrarily selected without using the evaluationstandard of a square error and the like.

Processing in each stage in Embodiment 2 is now described. Descriptionof processing same as that of Embodiment 1 is omitted. A flowchart ofsurviving symbol selection in first stage processing of Embodiment 2 isfirst described. FIG. 27 is a flowchart of the surviving symbolselection in the first stage processing of Embodiment 2.

As depicted in FIG. 27, the surviving symbol selection unit 328determines whether q≦ρ_(th) is satisfied or not (S701). When q≦ρ_(th) issatisfied (S701, Yes), the surviving symbol selection unit 328 adds asymbol in the ε⁽¹⁾-th row and q-th column of the symbol higher orderranking table 331 to surviving paths (S702). On the other hand, whenq≦ρ_(th) is not satisfied (S701, No), the surviving symbol selectionunit 328 adds a symbol number in the floor(ε⁽¹⁾/N_(adj))-th row andq-ρ_(th)-th column of the symbol lower order ranking table 332 tosurviving paths (S703).

A flowchart of k-th stage processing is now described. FIG. 28 is aflowchart of the k-th stage processing of Embodiment 2. As depicted inFIG. 28, the k-th stage processing unit sets i to 1 (S801).Subsequently, the region detection unit performs region detection asexpression (47) (S802). Then, the region detection unit increments i(S803). After that, the region detection unit determines whetheri≦S_(k-1) is satisfied or not (S804). When i≦S_(k-1) is satisfied (S804,Yes), the region detection unit returns to S802 and repeats theprocessing.

On the other hand, when i≦S_(k-1) is not satisfied (S804, No), thesurviving symbol selection unit initializes a representative cumulativemetric value E(i) and a current rank ρ(i) of each surviving path whichis survived on the k−1-th stage as expressed in expression (49),expression (50), and expression (51) (S805). Subsequently, the survivingsymbol selection unit selects i_(min) at which ρ(i)≦m_(N-k+1) issatisfied and a representative cumulative metric E(i) has the minimumvalue (S806).

Then, the surviving symbol selection unit selects a surviving symbol(S807). The selection of a surviving symbol will be described later.Subsequently, the metric calculation unit calculates a cumulative metricas expression (54) (S808). Then, the metric calculation unit updates thecumulative metric as expression (55), expression (56), and expression(57) (S809).

Subsequently, the metric calculation unit determines whether q≦S_(k) issatisfied or not (S810). When q≦S_(k) is satisfied (S810, Yes), thesurviving symbol selection unit returns to S806 and repeats theprocessing. On the other hand, when q≦S_(k) is not satisfied (S810, No),the metric calculation unit ends the processing.

A flowchart of surviving symbol selection in the k-th stage processingis now described. FIG. 29 is a flowchart of the surviving symbolselection in the k-th stage processing of Embodiment 2. As depicted inFIG. 29, the surviving symbol selection unit determines whetherρ(i_(min))≦ρ_(th) is satisfied or not (S901).

When ρ(i_(min))≦ρ_(th) is satisfied (S901, Yes), the surviving symbolselection unit adds a symbol in the ε^((k))(i_(min))-th row andρ(i_(min))-th column of the symbol higher order ranking table tosurviving paths (S902).

On the other hand, when ρ(i_(min))≦ρ_(th) is not satisfied (S901, No),the surviving symbol selection unit adds a symbol number in thefloor(ε^((k))(i_(min))/N_(adj))-th row and ρ(i_(min))-ρ_(th)-th columnof the symbol lower order ranking table to surviving paths (S903).

Embodiment 3

Embodiment 3 is now described. In Embodiment 2, an example that a symbolranking table is separated into two levels of tables, that is, a symbolhigher order ranking table and a symbol lower order ranking table atρ_(th) as a boundary is described. However, a symbol ranking table maybe separated into three or more levels of tables. In this embodiment, anexample that a symbol ranking table is separated into three levels oftables is described.

FIG. 30 illustrates a configuration example of a MIMO stream separationunit of Embodiment 3. As depicted in FIG. 30, Embodiment 3 is differentfrom Embodiments 1 and 2 in that a symbol intermediate order rankingtable is added. Description of configurations same as those ofEmbodiments 1 and 2 is omitted and the configuration different from thatof Embodiments 1 and 2 is mainly described.

A surviving symbol selection unit 428 of a first stage processing unitrefers to a symbol higher order ranking table 421 (Ω₁), a symbolintermediate order ranking table 422 (Ω₂), or a symbol lower orderranking table 433 (Ω₃) and sets as many candidate replicas as S₁, thenumber of surviving candidates from the higher order in the ranking, assurviving paths of the first stage. The surviving symbol selection unit428 sets the surviving path as expression (80).

$\begin{matrix}{{\Pi_{1}^{(1)}(i)} = \left\{ {\begin{matrix}{{\Omega_{1}^{(m_{N})}\left( {ɛ,i} \right)},} & {i \leq \rho_{{th},1}} \\{{\Omega_{2}^{(m_{N})}\left( {\left\lfloor {ɛ/N_{{adj},1}} \right\rfloor,{i - \rho_{{th},1}}} \right)},} & {\rho_{{th},1} < i \leq \rho_{{th},2}} \\{{\Omega_{3}^{(m_{N})}\left( {\left\lfloor {ɛ/N_{{adj},2}} \right\rfloor,{i - \rho_{{th},2}}} \right)},} & {i > \rho_{{th},2}}\end{matrix},{i = 1},2,\ldots \mspace{14mu},S_{1}} \right.} & (80)\end{matrix}$

A surviving symbol selection unit of a k-th stage processing unitadaptively selects a surviving path on the k-th stage as following. Thesurviving symbol selection unit first initializes a representativecumulative metric value E(i) and a current rank ρ(i) of each survivingpath which is survived on the k−1-th stage so as to obtain expression(81), expression (82), and expression (83).

E(i):=d _(k-1)(Π^((k-1))(i))  (81)

ρ(i):=1  (82)

q:=1  (83)

The surviving symbol selection unit selects a candidate replica on theρ(i_(min))-th order in the ranking of i_(min) at which ρ(i)≦m_(N-k+1) issatisfied and E(i) has the minimum value, from the symbol higher orderranking table Ω₁, the symbol intermediate order ranking table Ω₂, or thesymbol lower order ranking table Ω₃. The surviving symbol selection unitsets the q-th surviving path on the k-th stage as expression (84).

$\begin{matrix}{\mspace{79mu} {{{\Pi_{{l\sim k} - 1}^{(k)}(q)} = {\Pi^{({k - 1})}\left( i_{\min} \right)}}{{\Pi_{k}^{(k)}(q)} = \left\{ {{\begin{matrix}{{\Omega_{1}^{(m_{N - k + 1})}\left( {{ɛ^{(k)}\left( i_{\min} \right)},{\rho \left( i_{\min} \right)}} \right)},} & {{\rho \left( i_{\min} \right)} \leq \rho_{{th},1}} \\{{\Omega_{2}^{(m_{N - k + 1})}\left( {\left\lfloor {{ɛ^{(k)}\left( i_{\min} \right)}/N_{{adj},1}} \right\rfloor,{{\rho \left( i_{\min} \right)} - \rho_{{th},1}}} \right)},} & {\rho_{{th},1} < {\rho \left( i_{\min} \right)} \leq \rho_{{th},2}} \\{{\Omega_{3}^{(m_{N - k + 1})}\left( {\left\lfloor {{ɛ^{(k)}\left( i_{\min} \right)}/N_{{adj},2}} \right\rfloor,{{\rho \left( i_{\min} \right)} - \rho_{{th},2}}} \right)},} & {{\rho \left( i_{\min} \right)} > \rho_{{th},2}}\end{matrix}\mspace{79mu} i_{\min}} = {\arg\limits_{{\rho {(i)}} \leq m_{N - k + 1}}\left( {\min \left\lbrack {e(i)} \right\rbrack} \right)}} \right.}}} & (84)\end{matrix}$

The symbol higher order ranking table 421, the symbol intermediate orderranking table 422, and the symbol lower order ranking table 433 are nowdescribed in detail. FIGS. 31A to 31C respectively illustrate examplesof a symbol higher order ranking table, a symbol intermediate orderranking table, and a symbol lower order ranking table which are designedwhen ρ_(th,1)=4, ρ_(th,2)=12, ρ_(adj,1)=4, and ρ_(adj,2)=16 in a case in16QAM and N_(div)=3.

As depicted in FIG. 31A, the symbol higher order ranking table holdssymbol numbers in the order of shorter distance from a region center forevery region, from the first order to fourth order. As depicted in FIG.31B, the symbol intermediate order ranking table holds symbol numbers inthe order of shorter distance from a representative point of fourregions, which are adjacent to each other, for every four adjacentregions, from the fourth order to the 12th order. As depicted in FIG.31C, the symbol lower order ranking table holds symbol numbers in theorder of shorter distance from a representative point of eight regions,which are adjacent to each other, for every 16 adjacent regions (fourgroups from region 0 to region 15, from region 16 to region 31, fromregion 32 to region 47, and from region 48 to region 63), from the 12thorder to 16th order.

Processing on each stage in Embodiment 3 is now described. Descriptionof processing same as that of Embodiments 1 and 2 is omitted. Aflowchart of surviving symbol selection in first stage processing ofEmbodiment 3 is first described. FIG. 32 is a flowchart of the survivingsymbol selection in the first stage processing of Embodiment 3.

As depicted in FIG. 32, the surviving symbol selection unit 428determines whether q≦ρ_(th,1) is satisfied or not (S1001). Whenq≦ρ_(th,1) is satisfied (S1001, Yes), the surviving symbol selectionunit 428 adds a symbol in the ε⁽¹⁾-th row and q-th column of the symbolhigher order ranking table 421 to surviving paths (S1002).

On the other hand, when q≦ρ_(th,1) is not satisfied (S1001, No), thesurviving symbol selection unit 428 determines whether q≦ρ_(th,2) issatisfied or not (S1003). When q≦ρ_(th,2) is satisfied (S1003, Yes), thesurviving symbol selection unit 428 adds a symbol number in thefloor(ε⁽¹⁾/N_(adj1))-th row and q-ρ_(th,1)-th column of the symbolintermediate order ranking table 422 to surviving paths (S1004).

On the other hand, when q≦ρ_(th,2) is not satisfied (S1003, No), thesurviving symbol selection unit 428 adds a symbol number in thefloor(ε⁽¹⁾/N_(adj2))-th row and q-ρ_(th,2)-th column of the symbol lowerorder ranking table to surviving paths (S1005).

A flowchart of surviving symbol selection in k-th stage processing isnow described. FIG. 33 is a flowchart of the surviving symbol selectionin the k-th stage processing of Embodiment 3. As depicted in FIG. 33,the surviving symbol selection unit determines whetherρ(i_(min))≦ρ_(th,1) is satisfied or not (S1101).

When ρ(i_(min))≦ρ_(th,1) is satisfied (S1101, Yes), the surviving symbolselection unit adds a symbol in the ε^((k))(i_(min))-th row andρ(i_(min))-th column of the symbol higher order ranking table tosurviving paths (S1102).

On the other hand, when ρ(i_(min))≦ρ_(th,1) is (i not satisfied (S1101,No), the surviving symbol selection unit determines whetherρ(i_(min))≦ρ_(th,2) is satisfied or not (S1103). Whenρ(i_(min))≦ρ_(th,2) is satisfied (S1103, Yes), the surviving symbolselection unit adds a symbol number in the floor(ε^((k))(i_(min))/N_(adj1))-th row and ρ(i_(min))-ρ_(th,1)-th column ofthe symbol intermediate order ranking table to surviving paths (S1104).

On the other hand, when ρ(i_(min))-ρ_(th,2) is not satisfied (S1103,No), the surviving symbol selection unit adds a symbol number in thefloor(ε^((k))(i_(min))/N_(adj2))-th row and ρ(i_(min))-ρ_(th,2)-thcolumn of the symbol lower order ranking table to surviving paths(S1105).

In Embodiment 3, only the symbol higher order ranking table, the symbolintermediate order ranking table, and the symbol lower order rankingtable in a specific parameter example of 16QAM are illustrated. However,the embodiment is not limited to this example. For example, a table maybe designed by using the designing method described in Embodiments 2 and3, even in cases of other modulation methods and other parameters.Further, a table may be designed in a manner to be separated into fouror more levels.

Embodiment 4

Embodiment 4 is now described. Embodiment 4 is an embodiment which isobtained by combining the above-mentioned solving aspect 1 and solvingaspect 2. Any processing of Embodiments 1, 2, and 3 may be used asprocessing of the first stage. A surviving symbol selection unit of ak-th stage processing unit adaptively selects a surviving path on thek-th stage as following. The surviving symbol selection unit firstinitializes a representative cumulative metric value E(i) and a currentrank ρ(i) of each surviving path which is survived on the k−1-th stageso as to obtain expression (85), expression (86), and expression (87).

E(i):=d _(k-1)(Π^((k-1))(i))  (85)

ρ(i):=1  (86)

q:=1  (87)

The surviving symbol selection unit selects a candidate replica on theρ(i_(min))-th order in the ranking of i_(min) at which ρ(i)≦MAX_RANK_(k)is satisfied and E(i) has the minimum value, from a symbol higher orderranking table Ω₁ or a symbol lower order ranking table Ω₂. The survivingsymbol selection unit sets the q-th surviving path on the k-th stage asexpression (88).

$\begin{matrix}{\mspace{79mu} {{{\Pi_{{l\sim k} - 1}^{(k)}(q)} = {\Pi^{({k - 1})}\left( i_{\min} \right)}}{{\Pi_{k}^{(k)}(q)} = \left\{ {{\begin{matrix}{{\Omega_{1}^{(m_{N - k + 1})}\left( {{ɛ^{(k)}\left( i_{\min} \right)},{\rho \left( i_{\min} \right)}} \right)},} & {{\rho \left( i_{\min} \right)} \leq \rho_{th}} \\{{\Omega_{2}^{(m_{N - k + 1})}\left( {\left\lfloor {{ɛ^{(k)}\left( i_{\min} \right)}/N_{adj}} \right\rfloor,{{\rho \left( i_{\min} \right)} - \rho_{th}}} \right)},} & {{\rho \left( i_{\min} \right)} > \rho_{th}}\end{matrix}\mspace{20mu} i_{\min}} = {\arg\limits_{{\rho {(i)}} \leq {{{MAX}\_}\; {RANK}_{k}}}\left( {\min \left\lbrack {E(i)} \right\rbrack} \right)}} \right.}}} & (88)\end{matrix}$

A flowchart of the k-th stage is same as that of Embodiment 1. Aflowchart of surviving symbol selection on the k-th stage is same asthat of Embodiment 2, so that description thereof is omitted.

Here, table examples of a case of 16QAM, N_(div)=3, MAX_RANK^((16QAM))_(k)=8, ρ_(th)=4, and N_(adj)=4 are described. FIGS. 34A and 34Brespectively illustrate examples of a symbol higher order ranking tableand a symbol lower order ranking table. In Embodiment 4, only the symbolhigher order ranking table and the symbol lower order ranking table in aspecific parameter example of 16QAM are illustrated. However, theembodiment is not limited to this example. For example, a table may bedesigned by using the designing method described in Embodiments 1 and 2,even in cases of other modulation methods and other parameters. Further,a table for MAX_RANK_(k) or lower may be designed in a manner to beseparated into three or more levels.

Embodiment 5

Embodiment 5 is now described. An example of a symbol ranking tablesuitable for first stage processing is described in Embodiment 5. In thefirst stage processing, accuracy in lower orders is demanded in a symbolranking table compared to accuracy in higher orders in order to leavesymbol candidates of metrics which are as small as possible. Contrary toabove-described solving aspect 2 and Embodiments 2, 3, and 4, a symbolhigher order ranking table is designed in the order of shorter distancefrom a representative point of regions, which are adjacent to eachother, and a symbol lower order ranking table is designed in the orderof shorter distance from a representative point for each region.

A surviving symbol selection unit of a first stage processing unitrefers to a symbol higher order ranking table Ω₁ or a symbol lower orderranking table Ω₂ and sets as many candidate replicas as S₁, the numberof surviving candidates from the higher order in the ranking, assurviving paths of the first stage. The surviving symbol selection unitsets the surviving path as expression (89).

$\begin{matrix}{{\Pi_{1}^{(1)}(i)} = \left\{ {\begin{matrix}{{\Omega_{1}^{(m_{N})}\left( {\left\lfloor {ɛ/N_{adj}} \right\rfloor,i} \right)},} & {i \leq \rho_{th}} \\{{\Omega_{2}^{(m_{N})}\left( {ɛ,{i - \rho_{th}}} \right)},} & {i \geq \rho_{th}}\end{matrix},{i = 1},2,\ldots \mspace{14mu},S_{1}} \right.} & (89)\end{matrix}$

A flowchart of the first stage processing is same as that of Embodiment1, so that description thereof is omitted. A flowchart of survivingsymbol selection of the first stage processing is described. FIG. 35 isa flowchart of first stage processing of Embodiment 5.

As depicted in FIG. 35, the surviving symbol selection unit determineswhether q≦ρ_(th) is satisfied or not (S1201). When q≦ρ_(th) is satisfied(S1201, Yes), the surviving symbol selection unit adds a symbol in thefloor(ε⁽¹⁾/N_(adj))-th row and q-th column of the symbol higher orderranking table to surviving paths (S1202). On the other hand, whenq≦ρ_(th) is not satisfied (S1201, No), the surviving symbol selectionunit adds a symbol number in the ε⁽¹⁾-th row and q-ρ_(th)-th column ofthe symbol lower order ranking table to surviving paths (S1203).

A table of a case of ρ_(th)=8 and N_(adj)=4 in 16QAM and N_(div)=3 isnow described. FIGS. 36A and 36B respectively illustrate examples of asymbol higher order ranking table and a symbol lower order ranking tablefor the first stage processing of Embodiment 5. Here, in Embodiment 5,any of the configurations described in Embodiments 1 to 4 may be used asthe configurations on and after the second stage. Further, a symbolranking table may be separated into three levels of tables as Embodiment3. Further, only an example of a table in 16QAM is illustrated inEmbodiment 5, but it is apparent that a table in 64QAM is applicable aswell.

Embodiment 6

Embodiment 6 is now described. Embodiment 6 is an embodiment in whichthe above-mentioned solving aspect 1 is applied to the LSD method. Theconfiguration of a MIMO stream separation unit of Embodiment 6 is firstdescribed. FIG. 37 illustrates the configuration of a MIMO streamseparation unit of Embodiment 6. Description of the configurations sameas those of Embodiments 1 to 5 is omitted.

As depicted in FIG. 37, a MIMO stream separation unit 512 includes a QRdecomposition unit 516, a MIMO demodulation unit 522, and a LLRcalculation unit 554. The QR decomposition unit 516 includes a QRdecomposition processing unit 518 and a reception signal conversion unit520. The MIMO demodulation unit 522 includes a LSD processing unit 524.

The LSD processing unit 524 includes a region detection unit 526, asurviving symbol selection unit 528, a metric calculation unit 530, anda size reduction type symbol ranking table 532.

Processing of the MIMO demodulation unit 522 of Embodiment 6 is nowdescribed. FIG. 38 is a flowchart of Embodiment 6. As depicted in FIG.38, the region detection unit 526 performs region detection asexpression (47) (S1301). Subsequently, the LSD processing unit 524 setsρ(k) to 1 (S1302). Then, the surviving symbol selection unit 528 selectsa symbol in the ε^((k))-th row and ρ(k)-th column of the size reductiontype symbol ranking table Ω (S1303).

Subsequently, the metric calculation unit 530 calculates a cumulativemetric as expression (54) (S1304). Then, the metric calculation unit 530determines whether the cumulative metric≦threshold is satisfied or not(S1305). When the cumulative metric≦threshold is not satisfied (S1305,No), the metric calculation unit 530 returns to the k−1-th stage(S1306).

On the other hand, when the cumulative metric≦threshold is satisfied(S1305, Yes), the metric calculation unit 530 determines whether thecurrent stage is the N-th stage or not (S1307). When the current stageis not the N-th stage (S1307, No), the metric calculation unit 530 goesto the k+1-th stage (S1308).

On the other hand, when the current stage is the N-th stage (S1307,Yes), the metric calculation unit 530 adds a symbol candidate to a list(S1309). Subsequently, the metric calculation unit 530 determineswhether ρ(k)≦MAZ_RANK_(k), is satisfied or not (S1310).

When ρ(k)≦MAZ_RANK_(k) is not satisfied (S1310, No), the metriccalculation unit 530 returns to the k−1-th stage (S1311). On the otherhand, when ρ(k)≦MAZ_RANK_(k) is satisfied (S1310, Yes), the metriccalculation unit 530 increments ρ(k) (S1312) and returns to S1303.

Embodiment 7

Embodiment 7 is now described. Embodiment 7 is an embodiment in whichthe above-mentioned solving aspect 2 is applied to the LSD method. Theconfiguration of a MIMO stream separation unit of Embodiment 7 is firstdescribed. FIG. 39 illustrates the configuration of a MIMO streamseparation unit of Embodiment 7. Description of the configurations sameas those of Embodiments 1 to 6 is omitted.

As depicted in FIG. 39, a MIMO stream separation unit 612 includes a QRdecomposition unit 616, a MIMO demodulation unit 622, and a LLRcalculation unit 654. The QR decomposition unit 616 includes a QRdecomposition processing unit 618 and a reception signal conversion unit620. The MIMO demodulation unit 622 includes a LSD processing unit 624.

The LSD processing unit 624 includes a region detection unit 626, asurviving symbol selection unit 628, a metric calculation unit 630, asymbol higher order ranking table 631, and a symbol lower order rankingtable 632.

Processing of the MIMO demodulation unit 622 of Embodiment 7 is nowdescribed. FIG. 40 is a flowchart of Embodiment 7. As depicted in FIG.40, the region detection unit 626 performs region detection asexpression (47) (S1401). Subsequently, the LSD processing unit 624 setsρ(k) to 1 (S1402). Then, the surviving symbol selection unit 628determines whether ρ(k)≦ρ_(th) is satisfied or not (S1403).

Subsequently, when ρ(k)≦ρ_(th) is satisfied (S1403, Yes), the survivingsymbol selection unit 628 selects a symbol in the ε^((k))-th row andρ(k)-th column of the symbol higher order ranking table 631 (S1404). Onthe other hand, when ρ(k)≦ρ_(th) is not satisfied (S1403, No), thesurviving symbol selection unit 628 selects a symbol in thefloor(ε^((k))/N_(adj))-th row and ρ(k)-ρ_(th)-th column of the symbollower order ranking table 632 (S1405).

Subsequently, the metric calculation unit 630 calculates a cumulativemetric as expression (54) (S1406). Then, the metric calculation unit 630determines whether the cumulative metric≦threshold is satisfied or not(S1407). When the cumulative metric≦threshold is not satisfied (S1407,No), the metric calculation unit 630 returns to the k−1-th stage(S1408).

On the other hand, when the cumulative metric≦threshold is satisfied(S1407, Yes), the metric calculation unit 630 determines whether thecurrent stage is the N-th stage or not (S1409). When the current stageis not N-th stage (S1409, No), the metric calculation unit 630 goes tothe k+1-th stage (S1410).

On the other hand, when the current stage is the N-th stage (S1409,Yes), the metric calculation unit 630 adds a symbol candidate to a list(S1411). Subsequently, the metric calculation unit 630 determineswhether ρ(k)≦m_(N-k+1) is satisfied or not (S1412).

When ρ(k)≦m_(N-k+1) is not satisfied (S1412, No), the metric calculationunit 630 returns to the k−1-th stage (S1413). On the other hand, whenρ(k)≦m_(N-k+1) is satisfied (S1412, Yes), the metric calculation unit630 increments ρ(k) (S1414) and returns to S1403.

An example in which a symbol ranking table is separated into two levelsof tables is illustrated in Embodiment 7, but, not limited to thisexample, a symbol ranking table may be separated into three or morelevels of tables as Embodiment 3. Further, as Embodiment 4, Embodiment 7may be combined with Embodiment 6.

Seven embodiments have been described thus far, but the embodiments ofthe present disclosure are not limitedly applied only to ASSE method andLSD method. The embodiments are applicable to all MLD methods in whichregion detection is performed and a symbol ranking table is provided.

All examples and conditional language recited herein are intended forpedagogical purposes to aid the reader in understanding the inventionand the concepts contributed by the inventor to furthering the art, andare to be construed as being without limitation to such specificallyrecited examples and conditions, nor does the organization of suchexamples in the specification relate to a showing of the superiority andinferiority of the invention. Although the embodiments of the presentinvention have been described in detail, it should be understood thatthe various changes, substitutions, and alterations could be made heretowithout departing from the spirit and scope of the invention.

What is claimed is:
 1. A wireless device, comprising: an antennaconfigured to receive a reception signal; a processor configured toconvert the reception signal into a first signal that includes a productof an upper triangular matrix and a transmission signal, to detect afirst region, to which the first signal belongs, on an IQ plane; amemory configured to store a symbol ranking table that stores symbolcandidates in an order of shorter distance from a region center, up toan order that is equal to a rank upper limit value that is set to belower than a modulation multi-level number of the transmission signal;wherein the processor is further configured to select a first symbolcandidate based on the first region and the symbol ranking table.
 2. Thewireless device according to the claim 1, wherein the processor isfurther configured to detect a second region to which a second signalbelongs, the second signal being obtained by cancelling symbolcandidates of surviving paths up to a previous stage from the firstsignal, and the processor is further configured to select a secondsymbol candidate based on the second region and the symbol rankingtable.
 3. The wireless device according to the claim 2, wherein theprocessor is configured to select the second symbol candidate on acurrent rank of a surviving path, of which a current rank in a survivingpath up to the previous stage is equal to or lower than the rank upperlimit value and a cumulative metric up to the previous stage is minimum,by using the symbol ranking table.
 4. The wireless device according tothe claim 2, wherein when a current rank of a surviving path up to theprevious stage reaches the rank upper limit value, the processor doesnot add the second symbol candidate to the surviving path.
 5. A wirelessdevice, comprising: an antenna configured to receive a reception signal,a processor configured to convert the reception signal into a firstsignal that includes a product of an upper triangular matrix and atransmission signal, and to detect a first region, to which the firstsignal belongs, on an IQ plane; and a memory configured to store asymbol ranking table that separates orders from a first order to anorder equal to a modulation multi-level value into two or more rangesand stores symbol candidates in an order of shorter distance from arepresentative point of regions, the regions being adjacent to eachother, for every group of the adjacent regions, in each of the ranges;wherein the processor is further configured to select a first symbolcandidate based on the first region and the symbol ranking table.
 6. Awireless communication method by a wireless device, comprising:receiving a reception signal; converting the reception signal into afirst signal that includes a product of an upper triangular matrix and atransmission signal; detecting a first region, to which the first signalbelongs, on an IQ plane; and selecting a first symbol candidate based onthe first region and a symbol ranking table that stores symbolcandidates in an order of shorter distance from a region center, up toan order that is equal to a rank upper limit value that is set to belower than a modulation multi-level number of the transmission signal.7. The wireless communication method according to the claim 6, furthercomprising: detecting a second region to which a second signal belongs,the second signal being obtained by cancelling symbol candidates ofsurviving paths up to a previous stage from the first signal; andselecting a second symbol candidate based on the second region and thesymbol ranking table.
 8. The wireless communication method according tothe claim 7, wherein on selecting the second symbol candidate, thewireless communication device selects the second symbol candidate on acurrent rank of a surviving path, of which a current rank in a survivingpath up to the previous stage is equal to or lower than the rank upperlimit value and a cumulative metric up to the previous stage is minimum,by using the symbol ranking table.
 9. The wireless communication methodaccording to the claim 7, wherein when a current rank of a survivingpath up to the previous stage reaches the rank upper limit value, thewireless communication device does not add the second symbol candidateto the surviving path.